<?php

namespace app\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * MarginRecharge
 *
 * @ORM\Table(name="margin_recharge", uniqueConstraints={@ORM\UniqueConstraint(name="uuid", columns={"uuid"})}, indexes={@ORM\Index(name="user_id", columns={"user_id"})})
 * @ORM\Entity
 */
class MarginRecharge
{
    /**
     * @var int
     *
     * @ORM\Column(name="id", type="integer", nullable=false, options={"unsigned"=true})
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="IDENTITY")
     */
    private $id;

    /**
     * @var string
     *
     * @ORM\Column(name="uuid", type="string", length=40, nullable=false, options={"fixed"=true,"comment"="唯一标识"})
     */
    private $uuid;

    /**
     * @var int
     *
     * @ORM\Column(name="user_id", type="integer", nullable=false, options={"unsigned"=true,"comment"="用户ID"})
     */
    private $userId;

    /**
     * @var string
     *
     * @ORM\Column(name="realname", type="string", length=10, nullable=false, options={"comment"="真实姓名"})
     */
    private $realname = '';

    /**
     * @var string
     *
     * @ORM\Column(name="phone", type="string", length=40, nullable=false, options={"comment"="手机号"})
     */
    private $phone = '';

    /**
     * @var string
     *
     * @ORM\Column(name="id_number", type="string", length=18, nullable=false, options={"comment"="身份证号"})
     */
    private $idNumber = '';

    /**
     * @var string
     *
     * @ORM\Column(name="order_id", type="string", length=20, nullable=false, options={"comment"="订单id"})
     */
    private $orderId;

    /**
     * @var string
     *
     * @ORM\Column(name="amount", type="decimal", precision=14, scale=2, nullable=false, options={"comment"="充值金额"})
     */
    private $amount;

    /**
     * @var string
     *
     * @ORM\Column(name="pay_channel", type="string", length=20, nullable=false, options={"comment"="支付渠道"})
     */
    private $payChannel = '';

    /**
     * @var string
     *
     * @ORM\Column(name="bank_account", type="string", length=20, nullable=false, options={"comment"="银行卡号"})
     */
    private $bankAccount;

    /**
     * @var string
     *
     * @ORM\Column(name="bank_name", type="string", length=30, nullable=false, options={"comment"="银行名称"})
     */
    private $bankName;

    /**
     * @var bool
     *
     * @ORM\Column(name="is_cash_buy", type="boolean", nullable=false, options={"comment"="是否现金支付"})
     */
    private $isCashBuy = '0';

    /**
     * @var string
     *
     * @ORM\Column(name="error_message", type="string", length=100, nullable=false, options={"comment"="错误提示"})
     */
    private $errorMessage = '';

    /**
     * @var int
     *
     * @ORM\Column(name="status", type="smallint", nullable=false, options={"default"="100","comment"="状态 100处理中 200成功 400失败"})
     */
    private $status = '100';

    /**
     * @var string
     *
     * @ORM\Column(name="remake", type="string", length=250, nullable=false, options={"comment"="备注"})
     */
    private $remake = '';

    /**
     * @var string
     *
     * @ORM\Column(name="client_ip", type="string", length=15, nullable=false, options={"comment"="用户ip"})
     */
    private $clientIp;

    /**
     * @var \DateTime
     *
     * @ORM\Column(name="create_time", type="datetime", nullable=false, options={"comment"="创建时间"})
     */
    private $createTime;

    /**
     * @var \DateTime|null
     *
     * @ORM\Column(name="update_time", type="datetime", nullable=true, options={"comment"="更新时间"})
     */
    private $updateTime;


}
